home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 19
/
Amiga Format CD19 (1997-10-02)(Future Publishing)(GB)(Track 1 of 5)[!][issue 1997-11].iso
/
-seriously_amiga-
/
shareware
/
comms
/
other
/
spambegone
/
install.amiga
next >
Wrap
Text File
|
1997-08-18
|
7KB
|
182 lines
Introduction
============
Spam Be Gone! is a program that uses machine learning to predict
the priority of mail messages. As well as assigning spam messages
a low priority, it can also assign high priority to messages that
are likely to be of interest to you. It is a standalone program
that is designed to be integrated with your mailreader. It
requires three things to be any use:
1) Some way of calling Spam Be Gone! for each new mail message.
Ideally this would be as part of the mailreader, but there is a
program on Aminet called Filter that can be used externally
(that's what I use).
2) Your mailreader should be able to either filter mail based on the
X-Priority: message header or allow sorting mail based on that
header.
3) The mailer should also allow Spam Be Gone! to be called
by the user on demand to allow training (this is usually
accomplished by an ARexx menu command). If this is not possible,
Spam Be Gone! can be trained from the CLI (not a big hassle,
because not a great deal of training is required)
Installation of Spam Be Gone! (AMIGA)
=====================================
1. Copy the Spam Be Gone! executable somewhere. (In the examples
below, I've used Apps:Filter/). Spam Be Gone! requires that
the environment variables HOME and USER be set. HOME is the
directory where Spam Be Gone! will store it's config files,
and USER is your username (this should be the same as the
username in your key registration message).
2. Get your key registration message from
http://www.internz.com/SpamBeGone/
3. Run Spam Be Gone on the registration message (key_msg),
Apps:Filter/SpamBeGone -r < key_msg
to update your key. The message should be copied to stdout
along with a message saying a key was updated (if not, you
probably have a different username to the one your key works
for). You can also run SpamBeGone with the -h option to see
what else SpamBeGone lets you do from the CLI.
4. Edit your $HOME/.sbg-config file as necessary. In general the
keywords should be lowercase, and config identifiers
(like K+, K-, ADDRESSBOOK) are uppercase. We're contemplating
writing a standalone MUI application that will make this
prettier)
a) You should change/add positive and negative keywords.
Positive keywords are just as important as negative
keywords, because although spammers may try to avoid
the common negative keywords, they have no idea what
your interests (and thus your positive keywords) are.
b) You should set the location of your mailreader's
addressbook. If you don't have an addressbook you could
create a file (the default is .sbg-aliases) containing
email addresses of your friends.
c) You may wish to add more USER keywords (these indicate
that messages make reference to you or your friends
names directly).
5. Setup your system to pass incoming mail messages through
Spam Be Gone!. Ideally you'd want Spam Be Gone! to be called
directly by your mail reader for each incoming mail message. I use
Serious Voodoo, which doesn't allow this, so I use Filter
(from Aminet).
Here's my setup:
Mail arrives (by both SMTPd and AmiPOP) and gets stored in a
spoolfile (UUMAIL:trigg). Filter uses file notification to see
when new mail arrives there, and passes each message through
Spam Be Gone!, whos output gets appended to a new spool
file (UUMAIL:filtered). Voodoo is configured to get incoming
mail from UUMAIL:filtered rather than UUMAIL:trigg, and
automatically send messages with X-Priority: 5 to my garbage
folder.
My .filterrc file looks like this:
#?
COMMAND:Apps:Filter/SpamBeGone.sh
SpamBeGone.sh is a short shell script that just calls Spam Be
Gone! with the right parameters, and appends the output of Spam
Be Gone to the new spoolfile. It should be possible to just
put the equivalent line directly in the .filterrc, but for some
completely unexplained reason the temporary mail files filter
creates are only visible to SpamBeGone if it's run from inside
the script.
.key FILE/A
.bra {
.ket }
Apps:Filter/SpamBeGone >>UUMAIL:Filtered -r <{FILE}
If you use a mail reader that does POP'ing internally (like YAM)
then something else will have to be done. My friend who uses YAM
has the unix version of Spam Be Gone! make the predictions as the
mail arrives at his unix account. If this isn't an option for you,
some friendly soul will have to write an ARexx script to get Spam
Be Gone to predict the priority (use the -p option) after your
mailreader gets the new mail. Alternatively you could nicely ask
the author of your mailreader to either implement piping messages
through programs on arrival or talk to us about integrating a
library/plugin version of Spam Be Gone! into the mailer.
6. Initially train Spam Be Gone! on around 20 messages with
a variety of priorities (ranging from 1 to 5), eg from the CLI:
Apps:Filter/SpamBeGone -t 5 < spammy.msg
Apps:Filter/SpamBeGone -t 1 < important.msg
Ideally you'd like to be able to do this from inside your
mailreader as well. Voodoo currently doesn't let me, but my friend
who uses YAM has the following simple ARexx script to do it.
Make 5 copies with suitably named files (like "Train--Priority-5"),
with the number after -t changing for each one. You may have
to give the full location of SpamBeGone if it isn't in your path.
You can then call the appropriate script from within YAM to
train on the current message. (The actual script my friend has
uses rsh to connect to the unix machine where he runs Spam Be Gone!
and train on the message there.)
/* Train Spam Be Gone! */
OPTIONS RESULTS
ADDRESS YAM
getMailInfo FILE
ADDRESS COMMAND 'SpamBeGone -t 5 <' || RESULT
General Use
===========
Sit back and see what priorities Spam Be Gone! predicts in
the X-Priority: header of your mail messages. You may
be able to configure your mailreader to sort incoming
mail messages based on their priority, or to automatically
send messages with very low priority to a junk folder (that's
what I do with Voodoo).
You should only have to train Spam Be Gone! on messages that
you think it made a wrong prediction on. If the prediction
is acceptable, no training is required. For example, if
Spam Be Gone! assigns a high priority to a spam message,
train Spam Be Gone! so that next time a similar message
arrives it will make the right prediction. Similarly for
messages that Spam Be Gone mistakenly assigns a low priority
to. You might also want to review the message to see whether
it contains keywords (either positive or negative) that
could be added to your $HOME/.sbg-config file (in this case you
you may not need to train on the message as well, run
Apps:Filter/SpamBeGone -s < msg
and see if the new prediction is better. If not, train on
the message as well.
Let us know if you like Spam Be Gone!, have any suggestions
(particularly installation instructions for other mailreaders,
so we can share them with other users), or (gasp!) bug reports at
sbg-support@internz.co.nz